package com.niguang.work.labour.api.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 'work.v_personSite' is not BASE TABLE
 * </p>
 *
 * @author 83673
 * @since 2018-11-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("work_reform_apply")
public class ReformApply extends Model<ReformApply> {

    public static final String ID = "id";
    public static final String CONTENT_ID = "content_id";
    public static final String APPLY_OPEN_ID = "apply_open_id";
    public static final String APPLY_USER_ID = "apply_user_id";
    public static final String APPLY_USER_NAME = "apply_user_name";
    public static final String APPLY_USER_PHONE = "apply_user_phone";
    public static final String APPLY_JOB_POSITION = "apply_job_position";
    public static final String DANGER_LEVEL = "danger_level";
    public static final String REFORM_TERM = "reform_term";
    public static final String APPOINT_USER_ID = "appoint_user_id";
    public static final String APPOINT_USER_NAME = "appoint_user_name";
    public static final String APPOINT_USER_PHONE = "appoint_user_phone";
    public static final String APPOINT_JOB_POSITION = "appoint_job_position";
    public static final String DANGER_PIC = "danger_pic";
    public static final String DANGER_DESC = "danger_desc";
    public static final String CC_USER_NAME = "cc_user_name";
    public static final String CC_USER_ID = "cc_user_id";
    public static final String NODE_STEP = "node_step";
    public static final String APPLY_FLAG = "apply_flag";
    public static final String DEAL_FLAG = "deal_flag";
    public static final String CREATE_TIME = "create_time";
    public static final String UPDATE_TIME = "update_time";
    public static final String APPOINT_OPEN_ID = "appoint_open_id";
    public static final String VALID_FLAG = "valid_flag";
    public static final String FORM_FLAG = "form_flag";
    private static final long serialVersionUID = 1L;
    private Long id;
        /**
     * 整改表单ID
     */
         private Long contentId;
        /**
     * 审核人公众号openId
     */
         private String applyOpenId;
        /**
     * 审核人用户id
     */
         private String applyUserId;
        /**
     * 审核人用户姓名
     */
         private String applyUserName;
        /**
     * 审核人电话号码
     */
         private String applyUserPhone;
        /**
     * 审核人工作职位
     */
         private String applyJobPosition;
        /**
     * 隐患级别 1-一般 2-较大 3-重大 4-特大
     */
         private Integer dangerLevel;
        /**
     * 整改期限
     */
         private LocalDate reformTerm;
        /**
     * 指派人id
     */
         private String appointUserId;
        /**
     * 指派人姓名
     */
         private String appointUserName;
        /**
     * 指派人手机号码
     */
         private String appointUserPhone;
        /**
     * 指派人职位
     */
         private String appointJobPosition;
        /**
     * 隐患图片
     */
         private String dangerPic;
        /**
     * 隐患描述
     */
         private String dangerDesc;
        /**
     * 抄送人
     */
         private String ccUserName;
        /**
     * 抄送人ID
     */
         private String ccUserId;
        /**
     * 操作节点步骤 1-审核分发 2-整改处理 3-复查处理 4-整改驳回 5-转发
     */
         private Integer nodeStep;
        /**
     * 审核状态 1-无需整改 2-待整改 3-通过 4-不通过
     */
         private Integer applyFlag;
        /**
     * 是否处理 0-未处理 1-已处理
     */
         private Integer dealFlag;
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
        /**
     * 指派人openId
     */
         private String appointOpenId;
        /**
     * 是否驳回 0--未驳回 1-驳回
     */
         private Integer validFlag;
        /**
     * 1--安全隐患 2--质量隐患
     */
         private Integer formFlag;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
